| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

Classes | Public Member Functions | Static Public Member Functions | List of all members
nkWinUi::ToolBar Class Referenceabstract

A ToolBar in which items can be added to offer different capabilities. More...

Inheritance diagram for nkWinUi::ToolBar:

## Classes
class | Item
| Represents an item within a ToolBar. More...

## Public Member Functions
| ToolBar (System *system) noexcept
virtual | ~ToolBar ()
virtual Item * | getItem (unsigned int index) const =0
virtual unsigned int | getItemCount () const =0
void | setItemOrigin (ALIGNMENT value)
virtual Item * | addItem (nkMemory::StringView label, std::function< void()> callback)=0
virtual void | clearItems ()=0
virtual void | recomputeSizeToFitItems ()=0
Public Member Functions inherited from nkWinUi::Component
| Component (System *system) noexcept
virtual | ~Component ()
Layout * | getLayout () const
Theme * | getTheme () const
Font * | getFont () const
nkMaths::Point | getPositionInParent () const
nkMaths::Point | getPositionInScreen () const
float | getWidth () const
float | getHeight () const
nkMaths::Rectangle | getAreaInParent () const
nkMaths::Rectangle | getAreaInScreen () const
virtual nkMaths::Point | getBorderExtents () const
virtual float | getBorderExtent (BORDER_KIND border) const
virtual float | getLayoutAllowedWidth () const
virtual float | getLayoutAllowedHeight () const
virtual float | getLayoutAllowedOffsetX () const
virtual float | getLayoutAllowedOffsetY () const
bool | isInitialized () const
System * | getSystem () const
Component * | getParentComponent () const
COMPONENT_TYPE | getComponentType () const
nkMemory::StringView | getComponentName () const
bool | getVisibility () const
virtual nkMemory::StringView | getLabel () const
void * | getData () const
bool | isEnabled () const
bool | isForegroundWindow () const
virtual unsigned int | getZDepth () const
bool | getVisibleOnLoad () const
std::function< bool(Component *)> | getCloseCallback () const
std::function< void(Component *, bool)> | getVisibilityCallback () const
std::function< void(Component *, const ClickEventData &)> | getClickCallback () const
std::function< void(Component *, const WheelEventData &)> | getWheelCallback () const
std::function< void(Component *, const KeyEventData &)> | getKeyCallback () const
virtual Layout * | setLayout (LAYOUT_TYPE layoutType)
virtual void | setTheme (Theme *theme)
virtual void | setFont (Font *font)
virtual void | setPositionInParent (nkMaths::Point position)
virtual void | setPositionInScreen (nkMaths::Point position)
virtual void | setSize (float width, float height)
virtual void | setWidth (float width)
virtual void | setHeight (float height)
void | setMinSize (float width, float height)
void | setMaxSize (float width, float height)
void | setRatio (float widthOverHeight)
virtual void | setAreaInParent (const nkMaths::Rectangle &area)
virtual void | setAreaInScreen (const nkMaths::Rectangle &area)
virtual void | setParentComponent (Component *parent, bool makeItVisible=true)
virtual void | setLabel (nkMemory::StringView label)
void | setComponentName (nkMemory::StringView name)
virtual void | setVisibility (bool value)
void | setData (void *data)
void | setEnabled (bool value)
void | setVisibleOnLoad (bool value)
void | setCloseCallback (std::function< bool(Component *caller)> callback)
void | setVisibilityCallback (std::function< void(Component *caller, bool visibility)> callback)
void | setClickCallback (std::function< void(Component *caller, const ClickEventData &eventData)> callback)
void | setWheelCallback (std::function< void(Component *caller, const WheelEventData &eventData)> callback)
void | setKeyCallback (std::function< void(Component *caller, const KeyEventData &eventData)> callback)
void | addChild (Component *child, bool makeItVisible=true)
void | removeChild (Component *child)
void | removeChild (unsigned int index)
Component * | getChild (unsigned int index)
unsigned int | getChildIndex (Component *child)
void | unloadWithChildren ()
void | loadWithChildren ()
void | updateZDepth ()
void | bringToForeground ()
void | focusWindow ()
nkMaths::Point | getCoordRelativeFromAbsolute (nkMaths::Point absCoords)
nkMaths::Point | getCoordAbsoluteFromRelative (nkMaths::Point relCoords)
virtual void | load ()=0
virtual void | unload ()=0
void | reload ()
virtual void | updateWindow ()
nkImages::Image | paintToImage (bool withFrame=false)
void | simulateEvent (const InputDescriptor &inputDescription)
virtual void | onSized ()
virtual void | exportClassToTree (nkExport::Node *rootNode) override
virtual void | exportIntrospection (nkExport::Node *rootNode)
virtual void | importClassFromTree (nkExport::Node *rootNode) override
Public Member Functions inherited from nkExport::Exportable
| Exportable () noexcept
virtual | ~Exportable ()

## Static Public Member Functions
static nkMemory::UniquePtr< ToolBar > | create (System *system=nullptr)

## Detailed Description

A ToolBar in which items can be added to offer different capabilities.

Currently, a ToolBar can offer text items, that behave like buttons or that will make customizable ContextMenu pop for more interaction options.

## Constructor & Destructor Documentation

## ◆ ToolBar()

nkWinUi::ToolBar::ToolBar | ( | System * | system | ) |
| noexcept

Default constructor.

Parameters

  system | The parent system in which the component will live.

Remarks
  See ComponentManager::createOrRetrieve().

## ◆ ~ToolBar()

virtual nkWinUi::ToolBar::~ToolBar | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ getItem()

virtual Item* nkWinUi::ToolBar::getItem | ( | unsigned int | index | ) | const
| pure virtual

Parameters

  index | The index of the item to get.

Returns
  The item at given index if any, nullptr else.

## ◆ getItemCount()

virtual unsigned int nkWinUi::ToolBar::getItemCount | ( |  | ) | const
| pure virtual

Returns
  The number of items active in the tool bar.

## ◆ setItemOrigin()

void nkWinUi::ToolBar::setItemOrigin | ( | ALIGNMENT | value | ) |

Sets how the items should be aligned when placing them within the bar.

Parameters

  value | The alignment to use.

## ◆ addItem()

virtual Item* nkWinUi::ToolBar::addItem | ( | nkMemory::StringView | label,
|  | std::function< void()> | callback
| ) |  |
| pure virtual

Adds an item to the tool bar.

Parameters

  label | The label of the item to add.
  callback | The callback of the item to call when it is clicked. Can be nullptr if only the context menu is needed.

Returns
  The item freshly created, ready to be manipulated.

Remarks
  Items are placed in the ToolBar in the order they are added through this function.

## ◆ clearItems()

virtual void nkWinUi::ToolBar::clearItems | ( |  | ) |
| pure virtual

Clears all items from the ToolBar, making it start fresh.

## ◆ recomputeSizeToFitItems()

virtual void nkWinUi::ToolBar::recomputeSizeToFitItems | ( |  | ) |
| pure virtual

Recompute the size of the component to tightly fit the items it contains. This will take into account all text and margins required, both in width and height.

## ◆ create()

static nkMemory::UniquePtr<ToolBar> nkWinUi::ToolBar::create | ( | System * | system = `nullptr` | ) |
| static

Creates a standalone component, linking it to a system, but no manager. This method can be used to allocate a component and manually manage its lifetime.

Parameters

  system | The system to create the component into. If left to nullptr, then the Singleton instance will be used.

Returns
  The created component instance.

The documentation for this class was generated from the following file:

- Documentation/Headers/NilkinsWinUi/Components/ToolBar.h